ORDER BY - klauzula

Sortuje rekordy bΩd╣ce wynikiem kwerendy rosn╣co lub malej╣co wed│ug warto£ci okre£lonego pola lub p≤l.

Sk│adnia

SELECT lista_p≤l
    FROM tabela
    WHERE kryteria_wyboru
    [ORDER BY pole1 [ASC | DESC ][, pole2 [ASC | DESC ]][, ...]]]

Sk│adnia instrukcji SELECT z klauzul╣ ORDER BY zawiera nastΩpuj╣ce elementy:

Element Opis
lista_p≤l Nazwy pobieranych p≤l, kt≤rym mog╣ towarzyszyµ aliasy nazw p≤l, funkcje agreguj╣ce SQL, predykaty wyboru (ALL, DISTINCT, DISTINCTROW, lub TOP) albo inne opcje instrukcji SELECT.
tabela Nazwa tabeli, z kt≤rej pobierane s╣ rekordy. WiΩcej informacji mo┐na znaleƒµ w opisie klauzuli FROM.
kryteria_wyboru Kryteria wyboru. Je£li instrukcja zawiera klauzulΩ WHERE, aparat bazy danych Microsoft Jet porz╣dkuje warto£ci dopiero po zastosowaniu do rekord≤w warunk≤w wymienionych w klauzuli WHERE.
pole_1, pole_2 Nazwy p≤l, wzglΩdem kt≤rych sortowane s╣ rekordy.

Uwagi

Klauzula ORDER BY jest nieobowi╣zkowa. Jednak trzeba u┐yµ, aby pobierane dane by│y prezentowane w okre£lonej kolejno£ci.

Domy£ln╣ kolejno£ci╣ sortowania jest kolejno£µ rosn╣ca (A do », 0 do 9). W obu poni┐szych przyk│adach dane o pracownikach (nazwisko i imiΩ) wy£wietlane s╣ alfabetycznie wed│ug nazwisk:

SELECT Nazwisko, ImiΩ

FROM Pracownicy

ORDER BY Nazwisko;

SELECT Nazwisko, ImiΩ

FROM Pracownicy

ORDER BY Nazwisko ASC;

Aby zmieniµ kolejno£µ sortowania na malej╣c╣ (» do A, 9 to 0), nale┐y za ka┐dym z p≤l, kt≤remu ma odpowiadaµ kolejno£µ malej╣ca, umie£ciµ zastrze┐one s│owo DESC. W kolejnym przyk│adzie pobierane s╣ wynagrodzenia pracownik≤w i sortowane s╣ w kolejno£ci malej╣cej:

SELECT Nazwisko, Wynagrodzenie

FROM Pracownicy

ORDER BY Wynagrodzenie DESC, Nazwisko;

W przypadku umieszczenia na li£cie klauzuli ORDER BY p≤l zawieraj╣cych dane typu Memo lub obiekt OLE wyst╣pi b│╣d. Aparat bazy danych Microsoft Jet nie sortuje p≤l tych typ≤w.

Klauzula ORDER BY jest zazwyczaj ostatnim elementem instrukcji SQL.

Klauzula ORDER BY mo┐e zawieraµ nazwy kilku p≤l. Rekordy s╣ sortowane najpierw wed│ug warto£ci pola zajmuj╣cego pierwsze miejsce na li£cie klauzuli ORDER BY. Rekordy o identycznych warto£ciach w tych polach s╣ nastΩpnie sortowane wed│ug warto£ci drugiego pola, i tak dalej.

Zobacz te┐
ALL DISTINCT, DISTINCTROW, TOP û predykaty (Microsoft Jet SQL) SELECT - instrukcja (Microsoft Jet SQL)
FROM û klauzula (Microsoft Jet SQL) SELECT...INTO û instrukcja (Microsoft Jet SQL)
GROUP BY û klauzula (Microsoft Jet SQL) Funkcje agreguj╣ce SQL (SQL)
HAVING û klauzula (Microsoft Jet SQL) WHERE û klauzula (Microsoft Jet SQL)

Przyk│ad

ORDER BY û przyk│ad klauzuli